home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Tools / icedump 6.018 and nticedump 1.9 / wnt / doc / nticedump.doc
Encoding:
Text File  |  2000-07-26  |  8.6 KB  |  236 lines

  1.  
  2.      icedump 5.17 was the first version of our extension toolkit which adds
  3. support for NTICE and Windows NT platforms. This document discusses NTICE and
  4. Windows NT specific issues while using our tool. 
  5.     
  6.      Currently only the memory dumper and the Bhrama activator has been
  7. ported to nticedump. Expect other commands to be added in future versions, in
  8. both nticedump and icedump.
  9.     
  10.     nticedump supports both 32 bit PM clients, in both ring-0 and ring-3
  11. and 16 bit PM and (E)V86, DPMI, DOS4GW or any other DOS extender applications.
  12.  
  13.  
  14. 1. Commands Syntax
  15. ------------------
  16.  
  17.     1. Memory Dump: PAGEIN D BaseAddress Length FileName
  18.  
  19.         Example: PAGEIN D 400000 512 \??\C:\memory.dmp
  20.              PAGEIN D 400000 300 C:\memory.dmp 
  21.  
  22.     2. Pagein a memory page: PAGEIN D Address
  23.  
  24.         Example: PAGEIN D 400000
  25.  
  26.     3.Toggle dump Expert mode on/off: PAGEIN D
  27.  
  28.         Example: PAGEIN D
  29.  
  30.     4. Process Dump: PAGEIN B <Bhrama window name>
  31.  
  32.         Example: PAGEIN B ProcDump32 - Dumper Server
  33.  
  34.     5. File Load: PAGEIN L BaseAddress Length FileName
  35.  
  36.         Example: PAGEIN L 400000 512 \??\C:\memory.dmp
  37.              PAGEIN L 400000 300 C:\memory.dmp 
  38.  
  39.     6. Help  PAGEIN
  40.  
  41.         Example: PAGEIN
  42.  
  43.  
  44. 2. Notes about installation, patching ntice.sys and supported versions
  45. ----------------------------------------------------------------------
  46.  
  47.     Currently versions 3.22, 3.23, 3.24, 3.25, 4.00, 4.01, 4.05 are
  48. supported by nticedump. Note that support for 3.25 is ensured only for the
  49. original build, the updated one is not supported in this build of nticedump.
  50.     For binding the binary images into ntice.sys, use the included patcher 
  51. tool, ntid.exe, written by our friend G-Rom, author of the world-wide famous
  52. Procdump. The utility is pretty straight-forward to use, so I won't comment
  53. its usage now.
  54.     Windows NT 3.51 is NOT supported and will NEVER be.
  55.  
  56.  
  57. 3. File system issues
  58. ---------------------
  59.  
  60.     Due to some changes in the load order for the file system device
  61. drivers in Win2k, NTICE will complete initialization before any valid file
  62. system driver is loaded. This situation is not handled by the current version
  63. of nticedump, and therefore you have to be sure that a file system device was
  64. mounted before trying to dump memory.
  65.     Future versions of nticedump will allow a special mode of dumping
  66. through locked memory buffers and queued IO to support dumping in this
  67. situation.
  68.  
  69. (God, why should I bother with this? I doubt that anyone will ever need it :P)
  70.  
  71.  
  72. 4. Breakpoints and nticedump
  73. ----------------------------
  74.  
  75.     Altough nticedump can safely coexist with any kind of breakpoints, 
  76. like a supplementary safety you should not have breakpoints active while
  77. dumping on the following ntoskrnl.exe and win32 API's (or inside those
  78. API's :P):
  79.  
  80.     ZwCreateFile
  81.     ZwClose
  82.     ZwReadFile
  83.     ZwWriteFile
  84.     RtlInitAnsiString
  85.     RtlAnsiStringToUnicodeString
  86.     RtlFreeUnicodeString
  87.     MmIsAddressValid
  88.     DbgPrint    
  89.     KeAttachProcess
  90.     KeDetachProcess
  91.     GetCurrentProcessId
  92.     FindWindowA
  93.     SendMessageA
  94.     BPINT 2E
  95.  
  96.     Any other breakpoints will not interfere with dumper. 
  97.  
  98.  
  99. 5. Specifying correct paths. Dumping with expert mode ON. 
  100. ---------------------------------------------------------
  101.     
  102.     Dumping memory to a file requires a FULL path name to the output file
  103. name. Please note that from NT IO manager point of view, a string like
  104. "C:\memory.dmp" is not a valid path name. I will not enter in details here
  105. on how the NT IO manager interprets requests of this form for the Win32 
  106. subsytem, and while such a path name is invalid. What I will tell you is that
  107. you should use the following forms to pass the file name:
  108.  
  109.      Expert Path Mode
  110.      ----------------
  111.  
  112.         The expert path mode is the default way of constructing paths
  113. in nticedump. This mode is the only way to specify a valid path name before
  114. the symbolic links to "C:" , "D:" .... "Z" are built.
  115.  
  116.     1. "\??\C:\filename.dmp"
  117.         Will create file "filename.dmp" in root of drive C:
  118.                                                 
  119.     2. "\SystemRoot\filename"
  120.         Will create file "filename" in Windows NT root directory.
  121.  
  122.     3. "\device\Harddisk0\partition1\filename" 
  123.  
  124.         Will create file "filename" in root of drive C:
  125.  
  126.     Note that "\device\Harddisk0\partition1" is a valid object path name in 
  127. NT at the executive level. Specifying the path through method 1 is the
  128. preferred way, methods 2 or 3 being required only if you need to dump memory 
  129. BEFORE the symbolic links to C: D: .... X: are created. A normal user should 
  130. never have to use methods 2 or 3. "SystemRoot" symbolic link is created by
  131. the IO manager before NTICE has completed initialization, so using this name
  132. as a path component should be valid under any circumstances.
  133.  
  134.  
  135.      User Path Mode
  136.      ---------------
  137.     
  138.     The user path mode accepts as valid paths the "normal" way, which
  139. any user should be familiar with. 
  140.  
  141.     Example:
  142.  
  143.      "C:\memory.dmp"
  144.  
  145. Please note that you will be unable to dump before the drive letters' symbolic
  146. links are initialized.
  147.     
  148.  
  149.     Switching Expert mode on and off
  150.     --------------------------------
  151.  
  152.     Executing the PAGEIN D command, without any other parameters, will
  153. toggle expert mode on and off. A message is printed to the command window.
  154.  
  155.  
  156.     Misc. issues. Limitations
  157.     --------------------------
  158.     
  159.  
  160.     Long filenames are fully supported, so a file name like
  161. "ThisIsADumpCreatedWithIcedump" will be accepted without any problems.
  162. Note that specifying an already existing file name will result in a superseed
  163. operation, the old file contents being destroyed, without any warning and
  164. without generating a backup of the old file. So think twice before dumping
  165. to a file name like "\SystemRoot\System32\ntoskrnl.exe" ;=).
  166.     The current build is unable to recover from trying to dump a invalid
  167. memory range, such as a range containing non-mapped pages. In this case, the 
  168. operating systen will bug-check itself, throwing a PAGE_FAULT_IN_NONPAGED_AREA
  169. bug code. This will be fixed in the next release, until then please think twice
  170. what you dump =). (access to reserved memory will not cause any harm).
  171.  
  172.  
  173.  
  174. 6. Error handling. Messages and possible causes
  175. -----------------------------------------------
  176.  
  177.     To be written.
  178.  
  179.  
  180. 7. Terms of use
  181. ---------------
  182.  
  183.     nticedump is provided "as is", without any guarantees. The software may
  184. contain bugs, so use it at your own risk. We, the icedump team cannot be held
  185. responsible for any unintentional damage caused by the use of this product.
  186.  
  187.  
  188. 8. Technical support
  189. --------------------
  190.  
  191.     Before asking us any questions, do RTFM. However, due to the complexity
  192. of the NT operating system, unforeseen conditions may occur, which can cause
  193. nticedump to fail its task. In this case, first visit http://icedump.tsx.org,
  194. download the last available version, and see if the problem was fixed. If not,
  195. we will be happy to assist you, but be sure that you have the following
  196. information written down for us:
  197.  
  198.     1. nticedump version. Can be retrieved by typing PAGEIN without any 
  199. params.
  200.  
  201.     2. NTICE version and Windows NT version (including any Service Pack
  202. you use !!!!). A build number will be preferable, especially for Win2K.
  203.  
  204.     3. In the case of a BSOD, please copy the first 3 lines from the 
  205. screen, exactly as they appear. For very interesting situations, we might
  206. need a crash dump from your machine. (Hah, like I have time to spend staring 
  207. at your crashdumps :P)
  208.  
  209.     Note that although we provided the source code inside the package, this
  210. was for educational purposes only. We do not intend to support any product 
  211. resulted from modified source code. So if you want to customize your nticedump
  212. copy, be sure that you know damn well what you are doing. 
  213.     If you want that your modifications become part of the official
  214. nticedump package, send them to our team. We reserve the right to reject them 
  215. without any explanations, but this will happen only if you propose something
  216. of an incredible stupidity.
  217.     We also appreciate ideas for new extension commands. 
  218.  
  219. Credits:
  220.     
  221.     Fossil & The Owl: for the great support they offered me inside UKC
  222.               and the Icedump team. Thx you guys.      
  223.     G-Rom:         for Process Dump, the patcher, and overall support.
  224.     KrK:        for accepting to be a part of our Nticedump Beta team
  225.     Muffin:     for beeing a good friend, and the editor of this 
  226.             document. Sorry for the patcher, but the updated 
  227.             image files are not compatible with your code. Also,
  228.                         thx for Beta-testing.
  229.     JackyX:         Beta tester, good work !
  230.     The Rain:    Who did not care enough to send me his patcher, or
  231.             even to get feed-back on beta tests, but I care about 
  232.             him :P
  233.     
  234.   Acpizer, Animadei, Devil, KrK, G-Rom, Ghiribizzo, Iceman (.de), Lordbyte,
  235.   Mammon, Razzi, Slava, Sharp, The Owl, Zip
  236.